home *** CD-ROM | disk | FTP | other *** search
- 10 poke198,0
- 100 y=826:poke53280,0:poke53281,0:print"[147][152] d r a g o n ' s d e n"
- 110 print" please wait while maze is drawn"
- 120 bo$=" ":x$=""
- 130 f=831:g=832:h=829:c=3:dimm$(10,11):fori=1to9:forj=1to10
- 140 m$(i,j)=str$(int((7*rnd(1))+1))+str$(int((8*rnd(1))+1)):nextj,i
- 150 s=i+10:i=int((8*rnd(1))+1):j=int((9*rnd(1))+1):goto520
- 160 printx$"[151]";b$:b$="":ify$="m"thenprinttab(18)"[145]"sl
- 170 print"[155][145][145] c[146]hart m[146]ark b[146]ack";ss$"":ifhs=1then1320
- 180 ifwt>100ors<1then1180
- 190 gety$:ify$=""then190
- 200 ifde=1andy$<>"b"then190
- 210 gosub1580:de=0:print"[145]"sb$,sb$"[145]":gosub1560:ify$="c"then1420
- 220 ify$="m"thengosub1530:gosub930:sl=sl+1:s=s-1:b$="bread slices used":goto160
- 230 iftc=1thentc=0
- 240 wt=wt+1:ify$="l"andld=1ory$="r"andrd=1ory$="a"andfd=1ory$="b"then280
- 250 ify$="t"thenprint""spc(20)" [145]"
- 260 ify$="t"andtd=1then960
- 270 goto160
- 280 saf=i:fas=j:td=0:ld=0:rd=0:fd=0:ify$="b"thentc=1
- 290 iftb=1then470
- 300 iflt=1then370
- 310 ifrt=1then420
- 320 tb=0:lt=0:rt=0:ify$="l"thenj=j-1:lt=1:c=1
- 330 ify$="r"thenj=j+1:rt=1:c=2
- 340 ify$="a"theni=i-1:c=3
- 350 ify$="b"theni=i+1:tb=1:c=4
- 360 goto510
- 370 tb=0:lt=0:rt=0:ify$="l"theni=i+1:tb=1:c=4
- 380 ify$="r"theni=i-1:c=3
- 390 ify$="a"thenj=j-1:lt=1:c=1
- 400 ify$="b"thenj=j+1:rt=1:c=2
- 410 goto510
- 420 tb=0:lt=0:rt=0:ify$="l"theni=i-1:c=3
- 430 ify$="r"theni=i+1:tb=1:c=4
- 440 ify$="a"thenj=j+1:rt=1:c=2
- 450 ify$="b"thenj=j-1:lt=1:c=1
- 460 goto510
- 470 tb=0:lt=0:rt=0:ify$="l"thenj=j+1:rt=1:c=2
- 480 ify$="r"thenj=j-1:lt=1:c=1
- 490 ify$="a"theni=i+1:tb=1:c=4
- 500 ify$="b"theni=i-1:c=3
- 510 ss$="":goto790
- 520 print"[147]":forij=1to20:print"[166][166][166][166][166][166][166][166][166][166][166][166][166][166][166]"spc(10)"[166][166][166][166][166][166][166][166][166][166][166][166][166][166]":nextij
- 530 print"":forii=1to4:printtab(15)"[178][177][178][177][178][177][178][177][178][177][157][157][157][157][157][157][157][157][157][157][177][178][177][178][177][178][177][178][177][178]":nextii
- 540 pz=12:zp=15:forij=1to12:zp=zp-1:forji=1topz
- 550 printtab(zp)" ";:nextji:pz=pz+2:print:nextij:print""
- 560 jj=8:forii=14to3step-1:jj=jj+2
- 570 printtab(ii)"[169]"spc(jj)"[223]":nextii
- 580 printleft$(x$,19)tab(16)" ":printtab(17)" ":printleft$(x$,19);
- 590 ifc=3thenprinttab(17)"[155]n":printtab(17)"^"
- 600 ifc=4thenprinttab(17)"v":printtab(17)"[155]n"
- 610 ifc=1thenprinttab(16)"[155][195]>n"
- 620 ifc=2thenprinttab(16)"n[155]<[195]"
- 630 ifi>9orj>10ori<1orj<1thensaf=i:fas=j:goto760
- 640 mm=val(left$(m$(i,j),2)):onmmgoto650,660,670,680,690,700,710,760
- 650 gosub850
- 660 gosub770
- 670 gosub880:goto720
- 680 gosub850
- 690 gosub770:goto720
- 700 gosub880
- 710 gosub850
- 720 ifright$(m$(i,j),2)="22"thengosub930
- 730 ifmm>4thengosub940
- 740 ifval(mid$(m$(i,j),4,1))<6thengosub1260
- 750 goto160
- 760 gosub1580:printx$spc(11);"[145]dead end[146] go b[146]ack!":de=1:goto180
- 770 printleft$(x$,10):forgi=1to4:printtab(18)"[145][145] ":next
- 780 printtab(18)"[145][145][169] [223]":fd=1:pq=19:ss$=ss$+" a[146]head":goto920
- 790 print"":forii=1to4:printtab(15)"[178][177][178][177][178][177][178][177][178][177][157][157][157][157][157][157][157][157][157][157][177][178][177][178][177][178][177][178][177][178]":nextii
- 800 print"":forii=1to8:printtab(15)" ":nextii
- 810 print"":forgi=1to9:printtab(6)"[166][166][166][166]":next:ld=0:printtab(6)"[166][166][166][169]"
- 820 printtab(6)"[166][166][169]":printtab(6)"[166][169]":printtab(6)"[169]"
- 830 print"":forgi=1to9:printtab(30)"[166][166][166][166]":next:rd=0:printtab(30)"[223][166][166][166]"
- 840 printtab(31)"[223][166][166]":printtab(32)"[223][166]":printtab(33)"[223]":goto580
- 850 printleft$(x$,19):forgi=1to3:printtab(6)"[145][145] ":next
- 860 forgi=1to8:printtab(6)"[145][145][163][163][163][163]":next:ld=1
- 870 ss$=ss$+" l[146]eft":qp=6:pq=7:goto910
- 880 printleft$(x$,19):forgi=1to3:printtab(30)"[145][145] ":next:rd=1
- 890 forgi=1to8:printtab(30)"[145][145][163][163][163][163]":next:ld=1
- 900 ss$=ss$+" r[146]ight":qp=30:pq=31
- 910 printtab(qp)"[145][145][169][163][163][223]"
- 920 printtab(pq)"[145][145][169][223]":return
- 930 printleft$(x$,16)tab(20)"[155][213][192][201][157][157][157][173][192][189]":return
- 940 printleft$(x$,13)tab(17)"[206][163][163][163][163][163][205]":printtab(16)"[206] [215] [205]"
- 950 printtab(16)"[184][184][184][184][184][184][184][184][184]":td=1:ss$=ss$+" t[146]rap":return
- 960 print""tab(16)"[185][185][185][185][185][185][185][185][185]":printtab(16)"[205] [206]"
- 970 printtab(17)"[205] [206]"
- 980 ss=len(ss$):ss$=left$(ss$,ss-6)
- 990 fe=fe+1:
- 1000 onint((9*rnd(1))+1)goto1150,1010,1010,1150,1030,1010,1140,1010,1160,1030
- 1010 b$="you hear scales rattling-run!":hs=1:printleft$(x$,14)tab(18)"* *"
- 1020 goto160
- 1030 iffe<20then1010
- 1040 y$="":printx$"[145] [155]you found an exit! e[146]scape or h[146]unt?":fe=5
- 1050 gety$:ify$=""then1050
- 1060 ify$="h"thenprint"[145]"sb$:goto160
- 1070 ify$<>"e"then1040
- 1080 print"[147][155] you found an exit! and escaped":ifgl=0then1200
- 1090 print" with";gl;"gold pots!":goto1200
- 1100 ifsw=0thengosub1400
- 1110 ifsw=0thenprint"[147][155] you've been eaten by a dragon":goto1200
- 1120 b$="you found a dragon and used the sword":sw=0
- 1130 printleft$(x$,14)tab(18)" + +":goto160
- 1140 b$="found water, you've more time":wt=0:goto160
- 1150 b$="nothing there":goto160
- 1160 ifsw=1thenb$="you've found gold!":gl=gl+1:goto160
- 1170 b$="you've found a one shot magic sword!":sw=1:goto160
- 1180 ifs<1thenprint"[147][155] sorry - you starved to death!":goto1200
- 1190 print"[147][155] sorry - you died of thirst!":goto1200
- 1200 forij=1to100:next:poke59467,0
- 1210 print" try again (y/n)":ag$=""
- 1220 getag$:ifag$=""then1220
- 1230 ifleft$(ag$,1)="y"thenrun
- 1240 ifleft$(ag$,1)<>"n"then1220
- 1250 end
- 1260 onval(mid$(m$(i,j),4,1))gosub1270,1280,1290,1300,1310:return
- 1270 b$="the smoke smell is strong":return
- 1280 b$="soot is on the walls":return
- 1290 b$="you can hear dripping water!":return
- 1300 b$="blood is on the floor":return
- 1310 b$="you hear bats in flight":return
- 1320 vb=55:y$="":hs=0:td=0
- 1330 gety$:vb=vb-1:ifvb<45then1380
- 1340 forij=1to7:next
- 1350 ify$="l"andld=1ory$="r"andrd=1ory$="a"andfd=1ory$="b"then1370
- 1360 goto1330
- 1370 goto210
- 1380 ifsw>0then1120
- 1390 ifsw<=0then1100
- 1400 printleft$(x$,12)tab(19)"[216][192][216]":printtab(18)"(* *)":printtab(18)" [202][209][203]"
- 1410 printtab(17)"<<<><>>>":forij=1to1500:next:return
- 1420 ss$="":print"[147][156]"tab(14)"[164][164][164][164][164][164][164][164][164][164]
- 1430 [129]ij[178]1[164]9:[153][163]13)"waitthen";:[129]ji[178]1[164]10
- 1440 mm$[178][201](m$(ij,ji),2):[139]ij[178]i[175]ji[178]j[167][153]"wait^";:[137]1480
- 1450 [139]mm$[178]"-2"[167][153]"wait(NULL)";:[137]1480
- 1460 [139]mm$[178]"22"[167][153]"m";:[137]1480
- 1470 [153]" ";
- 1480 [130]ji:[153]"waitfn":[130]ij:[153][163]14)"tab(tab(tab(tab(tab(tab(tab(tab(tab(tab("
- 1490 [153]" press any key to return":[153][163]11)"to the dungeon"
- 1500 [161]y$:[139]y$[178]""[167]1500
- 1510 [139][201](m$(i,j),2)[178]"-2"[176][201](m$(i,j),2)[178]"22"[167]520
- 1520 m$(i,j)[178]m$(i,j)[170]"-2":[137]520
- 1530 [139][201](m$(i,j),2)[178]"-2"[167]m$(i,j)[178]m$(i,j)[170]"2":re turn
- 1540 [139][201](m$(i,j),2)[178]"22"[167][142]
- 1550 m$(i,j)[178]m$(i,j)[170]"22":[142]
- 1560 [139][201](m$(i,j),2)[178]"-2"[176][201](m$(i,j),2)[178]"22"[167][142]
- 1570 m$(i,j)[178]m$(i,j)[170]"-2":[142]
- 1580 [153][200](x$,23);bo$:[153]x$bo$:[142]
-